1. Field
The present invention relates to the field of content aggregation and more particularly to data feed management and utilization in content aggregation.
2. Description of Related Art
The advent of the Internet has given rise to new modes of computing unimaginable previously. Whereas personal computing prior to the widespread use of the Internet had been limited largely to the execution of computer programs in a single computing device, the advent of the Internet has enabled a multitude of different computing paradigms ranging from remote information gathering through the World Wide Web (the “Web”) to hosted computing applications managed by service providers and accessible to remote users over the Internet. Consequently, substantial cost savings have been realized in deploying host computing applications utilizing Web page technologies.
Despite the cost savings afforded by Web page technologies formatted in the hypertext markup language (HTML), the static nature of basic Web site views to information will be recognized as overly restrictive given the ubiquitous nature of Internet access to information common today. Thus, the outmoded nature of static Web site access to information has resulted in the development of content aggregation technologies such as portal computing aggregating different portlet views in a single page. In portal computing, different static Web site views—portlets—can be selected for appearance in a single page—the portal. User interface events received for one portlet in the portal are directed to the portlet, but a re-rendering of one portlet results in the update of the other portlets in the portal. Of import, while the flexibility afforded by portal technologies reflects a dramatic improvement over a singular static Web view of data, portal technologies still do not provide the flexibility requisite for true data analysis.
In this regard, lists remain the dominant mode of presenting data in a Web page. The data presented in the lists can either be static text extracted from a data store or generated dynamically by program code, or received through a “feed” as it is well known in the art. Feeds provide some flexibility as feeds generally deliver data in extensible markup language (XML) format. Even still, the flexibility necessary to visualize data scenarios of even moderate complexity is not present in a general list or feed. In fact, to present in a Web page a data set of one viewpoint that differs from a contemporaneously viewed data set of a different viewpoint requires a new retrieval of the desired data set from the data source. For applications that require multiple variations of the same basic data, an undesirably large number of requests to the original data source can result in performance degradation of an entire system.
To alleviate the undesirable strain on network resources resulting from repeated requests to retrieve different data sets to visualize different viewpoints of data, some designs call for a generic, encompassing query to retrieve a larger than necessary data set. Only subsequently, a filter can be applied to the encompassing data set to reduce the data to a desired viewpoint. However, performing strategic filtering on a retrieved data set presents compatibility problems in a mashup environment. In web development, a mashup is a web page or application that uses and combines data, presentation or functionality from two or more sources to create new services. Of note, to the extent the mashup environment is a performance critical environment, data set filtering can be undesirable and incompatible with the inherent interactivity associated with the mashup environment.